﻿using Microsoft.EntityFrameworkCore;


namespace EntityModels
{
    /// <summary>
    /// 基于Fluent API的配置
    /// </summary>
    public class BasicEntityDbContext : DbContext
    {
        public DbSet<SimpleEntity> SimpleEntities => Set<SimpleEntity>();

        protected override void OnModelCreating(ModelBuilder modelBuilder)
        {
            base.OnModelCreating(modelBuilder);
            // 风格一
            // 取出实体配置器
            var simpleEntityBuilder = modelBuilder.Entity<SimpleEntity>();

            simpleEntityBuilder.Property(s => s.Text)
                // 配置列非空
                .IsRequired()
                // 配置列大小（字符串用）
                .HasMaxLength(50);

            simpleEntityBuilder.Property(s => s.DecimalNumber)
                // 配置列精度（小数用）
                .HasPrecision(16, 4);

        }

    }
}
